Switching devices, such as routers, are sometimes used in packet-based networks to route packets of data through the networks. A switching device includes a number of interface modules, with each interface module connected to a different network node capable of interfacing with one or more network devices. Data packets received at and provided from the switching devices are referred to as inter-chassis packets, because they are communicated between devices having different chasses or housings. Intra-chassis data packets are communicated between interface modules within the common chassis of the switching device.
The switching device sometimes employs a backplane switching fabric to transfer intra-chassis packets between interface modules. However, the maximum packet size that can be communicated via the backplane switching fabric is sometimes smaller than the received inter-chassis packet. Accordingly, the switching device can segment a received inter-chassis packet into more than one intra-chassis packets for communication over the backplane switching fabric. The intra-chassis packets associated with inter-chassis packets provide an inter-chassis packet communication flow through a switching device. The intra-chassis packets associated with an inter-chassis packet communication flow are buffered at the target interface module until all the intra-chassis packets in the flow are received. The inter-chassis packets associated with the communication flow are then reassembled and transmitted to an off-chassis destination.
Further, the target interface module can manage multiple communication flows by allotting buffer space to each flow. Accordingly, as the number of communication flows to a target interface module increase, the amount of buffer space required to store the intra-chassis packets for each flow can become undesirably large. Alternatively, if the buffer space is insufficient to store all incoming intra-chassis packets associated with a communication flow, some intra-chassis packets may be dropped, leading to incomplete reassembly of inter-chassis packets or requiring retransmission of dropped packets, which slows the throughput of the communication device. Accordingly, there is a need for an improved communication device and methods thereof.